This invention relates to a technique for compensating errors that may be present in successive digital data words and, more particularly, to such a technique wherein burst errors of variable length are compensated selectively and automatically, depending upon the number of successive data words which are sensed as being erroneous.
Digital encoding techniques have been applied to various fields of information transmission and recording. For example, audio and video data originating as analog signals are converted to digital representations which are coded in a manner to minimize errors that would affect the recovery of the original information. One of such encoding techniques is the time-interleaved code, wherein a "block" of successive data words might be interleaved with data words from one or several other blocks, the resultant interleaved data words then being transmitted or recorded. With this code, even if one or more adjacent data words in the interleaved block are distorted during transmission, recording, receiving or playback operations, it is appreciated that, when the data words are de-interleaved to recover the original data blocks, only a few (typically, one) of those data words will be distorted. If such data words are further encoded in a conventional error-correcting code, the distorted data word may be corrected in accordance with the known capabilities of such error correcting codes.
When audio or video information is represented by digital signals, the fact that such information generally is relatively slowly varying means that an erroneous data word can be closely approximated by interpolation. For example, let it be assumed that, of three successive words, the first word is correct, the second is erroneous and the third is correct. In accordance with the aforementioned time-interleaved encoding technique, it is not unusual for burst errors which are present in the time-interleaved data block to result, after de-interleaving, in only one out-of-three de-interleaved data words as being erroneous. Here, the erroneous data word may be approximated by taking the average of the first and third (the preceding and following) data words.
A still closer approximation of the erroneous data word may be made by the so-called cubic interpolating technique. Cubic interpolation is utilized if the erroneous data word is preceded by two successive correct data words and is followed by two successive correct data words. Here too, this pattern of one-out-of-five data words as being erroneous is not unusual when burst errors affect the interleaved data words which constitute a time-interleaved block.
Yet another technique which is utilized to correct an erroneous data word is the so-called previous-value hold technique wherein an erroneous data word is replaced by the immediately preceding, correct data word.
Of the foregoing interpolation techniques, cubic interpolation generally provides the closest approximation of a correct data word, that is, the original data word which has been distorted, and the previous-value hold technique provides the least approximation of these three. But, a substantially greater amount of circuitry and circuit operating capacity are needed in order to improve the degree of approximation for compensating the erroneous data word. Hence, the degree of accuracy with which errors are compensated must be weighed against the complexity and cost of the error correction apparatus.
It is desirable to provide error compensating circuitry which can adapt to the number of errors which are present. For example, with smaller burst errors which may affect only every other data word, compensation based on relatively simple averaging may be satisfactory. For a relatively larger burst error wherein several successive data words are distorted, it may be necessary to replace one or more of such erroneous data words by using the previous-value hold technique. Likewise, if the burst error is of intermediate size, resulting in errors in a relatively small number of successive data words, it is advantageous to provide yet another data compensating, or interpolating, technique to correct those erroneous words. Depending upon the particular error condition which is present, an appropriate one of the aforementioned compensating techniques should be used.